#ifndef xpack_meta_has_hash
#define xpack_meta_has_hash
#pragma push_macro("xuser")
#undef  xuser
#define xuser mixc::meta_has_hash::inc
#include"define/base_type.hpp"
#include"macro/xexport.hpp"
#pragma pop_macro("xuser")

namespace mixc::meta_has_hash::origin{
    template<class object_t>
    concept has_hash = requires(object_t object, u64 value, uxx seed){
        value = object.hash();
        value = object.hash(seed);
    };
}

#endif

xexport_space(mixc::meta_has_hash::origin)